package com.yuw.dz.tools;

import java.util.*;

public class TestDriver03 {
    public static void main(String[] args) {
        test03();
    }

    /**
     * Set接口-LinkedHashSet
     */
    public static void test03() {
        // HashSet的使用
        Set set0 = new TreeSet();
        // 向集合中添加元素
        set0.add("zhangsan");
        set0.add("lisi");
        set0.add("lisi");
        set0.add("wangwu");
        set0.add("zhaoliu");
        //set0.add(null); // 不允许存入null值
        //set0.add(2);

        System.out.println("使用foreach遍历HashSet集合：");
        // 遍历set集合
        for (Object obj : set0) {
            System.out.print("    " + obj);
        }
        // 换行
        System.out.println();

        System.out.println("使用iterator迭代器遍历HashSet集合：");

        // Iterator遍历set集合
        Iterator it = set0.iterator();
        // hasNext()表示判定集合中还有没有下一个元素，没有则返回false，有则返回true
        // next()用户获取集合当前位置的元素值，并将指针移动到下一个元素的位置
        while (it.hasNext()) {
            // 使用next获取当前元素的值
            Object obj = it.next();
            System.out.print("    " + obj);
        }
        // 换行
        System.out.println();
    }

    /**
     * Set接口-LinkedHashSet
     */
    public static void test02() {
        // HashSet的使用
        Set set0 = new LinkedHashSet();
        // 向集合中添加元素
        set0.add("zhangsan");
        set0.add("lisi");
        set0.add("lisi");
        set0.add("wangwu");
        set0.add("zhaoliu");
        set0.add(null);
        //set0.add(2);

        System.out.println("使用foreach遍历HashSet集合：");
        // 遍历set集合
        for (Object obj : set0) {
            System.out.print("    " + obj);
        }
        // 换行
        System.out.println();

        System.out.println("使用iterator迭代器遍历HashSet集合：");

        // Iterator遍历set集合
        Iterator it = set0.iterator();
        // hasNext()表示判定集合中还有没有下一个元素，没有则返回false，有则返回true
        // next()用户获取集合当前位置的元素值，并将指针移动到下一个元素的位置
        while (it.hasNext()) {
            // 使用next获取当前元素的值
            Object obj = it.next();
            System.out.print("    " + obj);
        }
        // 换行
        System.out.println();
    }

    /**
     * Set接口-HashSet
     */
    public static void test01() {
        // HashSet的使用
        Set set0 = new HashSet();
        // 向集合中添加元素
        set0.add("zhangsan");
        set0.add("lisi");
        set0.add("lisi");
        set0.add("wangwu");
        set0.add("zhaoliu");
        set0.add(null);
        //set0.add(2);

        System.out.println("使用foreach遍历HashSet集合：");
        // 遍历set集合
        for (Object obj : set0) {
            System.out.print("    " + obj);
        }
        // 换行
        System.out.println();

        System.out.println("使用iterator迭代器遍历HashSet集合：");

        // Iterator遍历set集合
        Iterator it = set0.iterator();
        // hasNext()表示判定集合中还有没有下一个元素，没有则返回false，有则返回true
        // next()用户获取集合当前位置的元素值，并将指针移动到下一个元素的位置
        while (it.hasNext()) {
            // 使用next获取当前元素的值
            Object obj = it.next();
            System.out.print("    " + obj);
        }
        // 换行
        System.out.println();
    }
}
